home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SPACE 1
/
SPACE - Library 1 - Volume 1.iso
/
program
/
70
/
examples
/
examples.arc
/
PRIME.ST
< prev
next >
Wrap
Text File
|
1985-11-20
|
453b
|
26 lines
Class Main
[
main | x gen |
gen <- Primes new.
(smalltalk time: [ x <- gen first.
[x < 300]
whileTrue: [ x print. x <- gen next] ] ) print.
]
Class Primes
| lastPrime |
[
first
^ lastPrime <- 2
|
next
[lastPrime <- lastPrime + 1.
self testNumber: lastPrime]
whileFalse.
^ lastPrime
|
testNumber: n
(Primes new) do: [:x |
(x squared > n) ifTrue: [ ^ true ].
(n \\ x = 0) ifTrue: [ ^ false ] ]
]